package com.lb.aicodebackend.model.enums;

import cn.hutool.core.util.ObjUtil;
import lombok.Getter;

@Getter
public enum UserRoleEnum {
    USER("用户","user"),
    ADMIN("管理员","admin");

    private final String text;
    private final String value;

// 构造函数，用于初始化UserRoleEnum对象
    UserRoleEnum(String text, String value){
        // 将传入的text参数赋值给对象的text属性
        this.text = text;
        // 将传入的value参数赋值给对象的value属性
        this.value = value;
    }

    /**
     * 根据value获取对应的UserRoleEnum枚举值
     * @param value 枚举值的字符串表示
     * @return 对应的UserRoleEnum枚举值，如果没有找到则返回null
     */
    public static UserRoleEnum getEnumByValue(String value){
        // 判断传入的value是否为空
        if (ObjUtil.isEmpty(value)){
            // 如果为空，则返回null
            return null;
        }
        // 遍历UserRoleEnum枚举类中的所有值
        for(UserRoleEnum anEnum : UserRoleEnum.values()){
            // 判断当前枚举值是否与传入的value相等
            if(anEnum.value.equals(value)){
                // 如果相等，则返回当前枚举值
                return anEnum;
            }
        }
        // 如果没有找到相等的枚举值，则返回null
        return null;
    }
}
